<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Object.defineproperty</title>
</head>
<body>
<script type="text/javascript"> 
  let person = {
    name: '海绵宝宝',
    age:'20',
  }

  let defineSex  = '男'
  Object.defineProperty(person, 'sex', {
/*     value: '男',
     // 控制属性是否可以枚举  默认false
    enumerable: true,
    //　控制属性是否可以被修改 默认false
    writable: true,
    // 控制属性是否可以被删除 
    configurable: true, */
    // 当有人读取person的 sex 属性时, get函数就会被调用,返回的就是age的值 
    get(){
      console.log('有人读取了sex')
      return defineSex
    },
      // 当有人读取person的 sex 属性时, set函数就会被调用,会传入修改后的值
    set(value){
      console.log('有人修改了sex:' + value)
      defineSex = value
    }
  })  
  console.log(person);
</script>
</body>
</html>